﻿using mozhi.smarterp.Business.Enums;
using System;
using System.Collections.Generic;
using System.Text;
using Volo.Abp.Application.Dtos;

namespace mozhi.smarterp.Business.Products
{
    public class ProductInventorySettingDto : EntityDto<Guid>
    {
        public Guid ProductId { get; set; }

        public string ProductCode {  get; set; }

        public string ProductName { get; set; }

        /// <summary>
        /// 计价方式
        /// </summary>
        public ProductPricingType PricingType { get; set; }

        /// <summary>
        /// 默认仓库
        /// </summary>
        public Guid DefaultWarehouseId { get; set; }

        public string DefaultWarehouseName { get; set; }

        /// <summary>
        /// 默认库位
        /// </summary>
        public Guid? DefaultLocationId { get; set; }

        public string DefaultLocationName {  get; set; }

        /// <summary>
        /// 启用批号
        /// </summary>
        public bool EnableBatchNumber { get; set; }

        /// <summary>
        /// 启用保质
        /// </summary>
        public bool EnableShelfLife { get; set; }

        /// <summary>
        /// 保质期天数
        /// </summary>
        public decimal? ShelfLifeDays { get; set; }

        /// <summary>
        /// 启用序列号
        /// </summary>
        public bool EnableSerialNumber { get; set; }

        /// <summary>
        /// 最小库存
        /// </summary>
        public decimal? MinStockQuantity { get; set; }

        /// <summary>
        /// 最大库存
        /// </summary>
        public decimal? MaxStockQuantity { get; set; }

        /// <summary>
        /// 安全库存
        /// </summary>
        public decimal? SafetyStockQuantity { get; set; }

        /// <summary>
        /// 再订货点
        /// </summary>
        public decimal? ReorderPointQuantity { get; set; }
    }
}
